import { helpers } from 'vuelidate/lib/validators'
/*******
 *  规则
 *
 *******/

// 正数
const regPlusNumber = /^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$/
// 正整数
const regPlusInteger = /^[1-9]{1,}[\d]*$/
// 数字或者子母或者数字子母混合
const chinese = /^(?!^[A-Za-z]+$)(?!^[0-9]*$)(?!^[A-Za-z0-9]+$)/
// 字符
const char = /[\u4e00-\u9fa5]/
// 邮箱验证
const Email = /^\w+@[a-z0-9]+\.[a-z]{2,4}$/
/*******
 *  验证器
 *
 *******/

// 正数
export const plusNumber = value => regPlusNumber.test(value) || !helpers.req(value)
// 正整数
export const plusInteger = value => regPlusInteger.test(value) || !helpers.req(value)
// 中文
export const isChinese = value => chinese.test(value) || !helpers.req(value)
// 字符
export const ischar = value => char.test(value) || !helpers.req(value)
// 邮箱
export const isEmail = value => Email.test(value) || !helpers.req(value)
// 胡总(1076249046)  22:19:10
// 键盘应该在中文名称中，不要显示在编码；同时，我们编码除了 字母和数字，其他字符，包括中文是不允许的，不知道是否有这样的校验
// 胡总(1076249046)  22:20:13
// 编码可以是：  10.11.10.21，  A1000-100， *100@100 等，但不能包含中文字符，  1000键盘，这样的品项编码是不允许的
